package org.jeecg.modules.flowable.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author zhangyong
 * @since 2022-10-10
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_act_matter_inst")
@ApiModel(value="TActMatterInstEntity对象", description="")
public class TActMatterInstEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "ID")
    @TableId("ID")
    private String id;

    @ApiModelProperty(value = "事项表ID（FK）")
    @TableField("ACT_MATTER_ID")
    private String actMatterId;

    @ApiModelProperty(value = "启动表单ID（FK）")
    @TableField("ACT_FENG_FORM_ID")
    private String actFengFormId;

    @ApiModelProperty(value = "流程实例ID")
    @TableField("PROC_INST_ID_")
    private String procInstId;

    @ApiModelProperty(value = "标题")
    @TableField("MATTER_TITLE")
    private String matterTitle;

    @ApiModelProperty(value = "描述")
    @TableField("MATTER_DESC")
    private String matterDesc;

    @ApiModelProperty(value = "发起人")
    @TableField("START_USER_ID")
    private String startUserId;

    @ApiModelProperty(value = "发起人姓名")
    @TableField("START_USER_NAME")
    private String startUserName;

    @ApiModelProperty(value = "发起时间")
    @TableField("START_TIME")
    private Date startTime;

    @ApiModelProperty(value = "办结时间")
    @TableField("END_TIME")
    private Date endTime;

    @ApiModelProperty(value = "耗时")
    @TableField("COST_TIME")
    private Long costTime;

    @ApiModelProperty(value = "状态(1发起、2处理中、3完结、4回退、5回退已提)")
    @TableField("STATUS")
    private Integer status;

    @ApiModelProperty(value = "公共-备注")
    @TableField("REMARK")
    private String remark;

    @ApiModelProperty(value = "公共-创建人")
    @TableField(value = "CREATE_BY", fill = FieldFill.INSERT)
    private String createBy;

    @ApiModelProperty(value = "公共-创建时间")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty(value = "公共-修改人")
    @TableField(value = "UPDATE_BY", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    @ApiModelProperty(value = "公共-修改时间")
    @TableField(value = "UPDATE_TIME", fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    @ApiModelProperty(value = "公共-有效性状态")
    @TableField("DEL_FLAG")
    private Integer delFlag;

    @ApiModelProperty(value = "公共-租户ID")
    @TableField(value = "TENANT_ID", fill = FieldFill.INSERT)
    private String tenantId;

    @ApiModelProperty(value = "公共-事务ID")
    @TableField("TID")
    private String tid;

    @ApiModelProperty(value = "公共-预留1")
    @TableField("EXT_AA")
    private String extAa;

    @ApiModelProperty(value = "公共-预留2")
    @TableField("EXT_BB")
    private String extBb;

    @ApiModelProperty(value = "原事项实例ID")
    @TableField("ORI_MATTER_INST_ID")
    private String oriMatterInstId;

    @ApiModelProperty(value = "重新提交时间")
    @TableField("RESTART_TIME")
    private Date restartTime;

    @ApiModelProperty(value = "新单据-首次提交时间")
    @TableField("FIRST_TIME")
    private Date firstTime;

    @ApiModelProperty(value = "新单据-历史单据ID轨迹")
    @TableField("HIS_IDS")
    private String hisIds;

    @ApiModelProperty(value = "表单标识")
    @TableField("FORM_KEY")
    private String formKey;

    @ApiModelProperty(value = "表单内容JSON")
    @TableField("FORM_CONTENT")
    private String formContent;

}
